home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 7 / BBS in a Box - Macintosh - Volume VII (BBS in a Box) (January 1993).iso / Files / Hyper / Hyperj-Hz / HyperTalk trick.cpt / HyperTalk trick / card_2874.txt < prev    next >
Text File  |  1990-12-13  |  1KB  |  50 lines

  1. -- card: 2874 from stack: in
  2. -- bmap block id: 0
  3. -- flags: 0000
  4. -- background id: 2770
  5. -- name: 
  6. ----- HyperTalk script -----
  7. function q
  8. -- utility function to evaluate and quote arguments
  9. -- Example: q(a,1+1,...,z) -> "a","2",...,"z"
  10. -- Author: Mark G. Mendel, GENIE: MGM, uucp: umn-cs.MN.ORG!hyper!mark
  11. put quote & param(1) & quote into res
  12. repeat with i = 2 to the paramCount
  13.   put "," & quote & param(i) & quote after res
  14. end repeat
  15. return res
  16. end q
  17.  
  18.  
  19.  
  20. -- part 1 (field)
  21. -- low flags: 00
  22. -- high flags: 4007
  23. -- rect: left=5 top=25 right=287 bottom=510
  24. -- title width / last selected line: 0
  25. -- icon id / first selected line: 0 / 0
  26. -- text alignment: 0
  27. -- font id: 3
  28. -- text size: 12
  29. -- style flags: 0
  30. -- line height: 16
  31. -- part name: 
  32.  
  33.  
  34. -- part contents for card part 1
  35. ----- text -----
  36.  
  37. This card's script contains the very short but very useful function  Q().
  38.  
  39. Q() takes a  variable number of arguments and returns a string containing the arguments values quoted and separated by commas.
  40.  
  41. Q() is particularly usefull with the "Send" and "Do" commands.
  42.  
  43. Using it allows one to transform expressions like:
  44.  
  45.     do "boo " &  quote & 2+2 & quote & "," & quote & the Date & quote
  46.  
  47. into
  48.  
  49.     do "boo " & q(2+2,the Date)
  50.